package com.java.comprehensive.springboot_es.config;

import lombok.Data;
import org.apache.http.HttpHost;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

import org.springframework.data.elasticsearch.config.AbstractElasticsearchConfiguration;

@ConfigurationProperties(prefix = "elasticsearch")
@Configuration
@Data
public class ElasticsearchConfig extends AbstractElasticsearchConfiguration {
	private String host;
	private Integer port;

	//重写父类方法
	@Override
	public RestHighLevelClient elasticsearchClient() {
		RestClientBuilder builder = RestClient.builder(new HttpHost(host, port));
		RestHighLevelClient restHighLevelClient = new
				RestHighLevelClient(builder);
		return restHighLevelClient;
	}
}